//---------------------------------------------------------------------------

#include <vcl.h>
#pragma hdrstop

#include "uRappelSauvegarde.h"
#include "EIC.h"
#include "Outils.h"
//---------------------------------------------------------------------------
#pragma package(smart_init)
#pragma resource "*.dfm"

//-------------------------------------------------------------------------------------------
// Cette fenêtre apparaît : - à la clôture des logiciels EIC
//                          - à la MAJ si le logiciel ne possède pas de fonction de clôture
//-------------------------------------------------------------------------------------------
bool __fastcall EICFenetreRougeRappelSauvegarde( const AnsiString &Partenaire)
{
  TuRappelSauvegardeForm *Fenetre;
  bool Resultat;
  try
  {
    Resultat = false;
    Fenetre  = new TuRappelSauvegardeForm(Partenaire);
    Resultat = (Fenetre->ShowModal() == mrYes);
  }
  catch(...)
  {
  }
  delete Fenetre;
  return Resultat;
}



AnsiString __fastcall TexteRappelSauvegarde( const AnsiString &Partenaire)
{
  const char *Texte = "EXTRAIT DU CONTRAT DE LICENCE LOGICIEL\r\n"
                      "\r\n"
                      "\r\n"
                      "SAUVEGARDES\r\n"
                      "Le client doit :\r\n"
                      "- procéder aux opérations de sauvegarde selon la périodicité définie ci-dessous,\r\n"
                      "- contrôler sur l'ensemble des matériels et logiciels qu'elles se sont bien effectuées,\r\n"
                      "- tester régulièrement la procédure de restauration.\r\n"
                      "\r\n"
                      "1. Sauvegarde quotidienne\r\n"
                      "Cette sauvegarde devra être conservée pendant un délai minimum de 7 jours.\r\n"
                      "\r\n"
                      "2. Sauvegarde hebdomadaire\r\n"
                      "Cette sauvegarde devra être conservée pendant un délai minimum de 4 semaines.\r\n"
                      "\r\n"
                      "3. Archivage annuel\r\n"
                      "Cette archive devra être conservée pendant toute la durée de validité des données.\r\n"
                      "Pour tous les logiciels comportant une opération de clôture, cet archivage annuel devra "
                      "être effectué avant l'opération de clôture.\r\n"
                      "Pour les autres logiciels, nous vous recommandons d'effectuer cet archivage annuel avant "
                      "l'installation d'une mise à jour majeure du logiciel.\r\n"
                      "\r\n"
                      "RESPONSABILITE\r\n"
                      "En cas de non respect des procédures de sauvegarde, %s ne pourra être tenue pour "
                      "responsable des dommages consécutifs à la perte des données qui auraient dû faire "
                      "l'objet de ces sauvegardes, et ce quelque soit la cause de la perte de ces données.";
  return EICFormat(Texte,Partenaire.c_str());
}

//---------------------------------------------------------------------------------------------------
__fastcall TuRappelSauvegardeForm::TuRappelSauvegardeForm( const AnsiString &Partenaire): CForm(( TComponent*)NULL)
{
  Memo1->Text = TexteRappelSauvegarde(Partenaire);
  ::MessageBeep(MB_ICONEXCLAMATION);
  #ifdef _DEBUG
    if( IS_MACHINE_INFORMATICIEN())
    {
      chkEnableYes->Checked = true;
      btYes->Enabled = true;
    }
  #endif
  lbEnTete->Caption = EICFormat("La clôture d'un dossier est une opération irréversible.\nAvez-vous réalisé les opérations suivantes :\n  - Edition de tous les journaux et de la balance ?\n  - Sauvegarde du dossier ?");
}
//---------------------------------------------------------------------------
void __fastcall TuRappelSauvegardeForm::chkEnableYesClick(TObject *Sender)
{
  btYes->Enabled = chkEnableYes->Checked;
}
//---------------------------------------------------------------------------
